{
 "cells": [
  {
   "cell_type": "code",
   "execution_count": 1,
   "metadata": {},
   "outputs": [],
   "source": [
    "import os\n",
    "import random\n",
    "import itertools\n",
    "import numpy as np\n",
    "import pandas as pd\n",
    "import matplotlib.pyplot as plt\n",
    "\n",
    "from sklearn.manifold import TSNE\n",
    "from sklearn.preprocessing import StandardScaler\n",
    "from sklearn.model_selection import train_test_split\n",
    "from sklearn.metrics import accuracy_score, confusion_matrix, classification_report\n",
    "\n",
    "import tensorflow as tf\n",
    "from tensorflow.keras.models import *\n",
    "from tensorflow.keras.layers import *\n",
    "from tensorflow.keras.utils import *"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 2,
   "metadata": {},
   "outputs": [],
   "source": [
    "def plot_confusion_matrix(cm, classes, title='Confusion matrix', cmap=plt.cm.Blues):\n",
    "\n",
    "    cm = cm.astype('float') / cm.sum(axis=1)[:, np.newaxis]\n",
    "\n",
    "    plt.imshow(cm, interpolation='nearest', cmap=cmap)\n",
    "    plt.title(title, fontsize=25)\n",
    "    #plt.colorbar()\n",
    "    tick_marks = np.arange(len(classes))\n",
    "    plt.xticks(tick_marks, classes, rotation=90, fontsize=15)\n",
    "    plt.yticks(tick_marks, classes, fontsize=15)\n",
    "\n",
    "    fmt = '.2f'\n",
    "    thresh = cm.max() / 2.\n",
    "    for i, j in itertools.product(range(cm.shape[0]), range(cm.shape[1])):\n",
    "        plt.text(j, i, format(cm[i, j], fmt),\n",
    "                 horizontalalignment=\"center\",\n",
    "                 color=\"white\" if cm[i, j] > thresh else \"black\", fontsize = 14)\n",
    "\n",
    "    plt.ylabel('True label', fontsize=20)\n",
    "    plt.xlabel('Predicted label', fontsize=20)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 3,
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "(8820, 60)\n"
     ]
    },
    {
     "data": {
      "text/html": [
       "<div>\n",
       "<style scoped>\n",
       "    .dataframe tbody tr th:only-of-type {\n",
       "        vertical-align: middle;\n",
       "    }\n",
       "\n",
       "    .dataframe tbody tr th {\n",
       "        vertical-align: top;\n",
       "    }\n",
       "\n",
       "    .dataframe thead th {\n",
       "        text-align: right;\n",
       "    }\n",
       "</style>\n",
       "<table border=\"1\" class=\"dataframe\">\n",
       "  <thead>\n",
       "    <tr style=\"text-align: right;\">\n",
       "      <th></th>\n",
       "      <th>0</th>\n",
       "      <th>1</th>\n",
       "      <th>2</th>\n",
       "      <th>3</th>\n",
       "      <th>4</th>\n",
       "      <th>5</th>\n",
       "      <th>6</th>\n",
       "      <th>7</th>\n",
       "      <th>8</th>\n",
       "      <th>9</th>\n",
       "      <th>...</th>\n",
       "      <th>50</th>\n",
       "      <th>51</th>\n",
       "      <th>52</th>\n",
       "      <th>53</th>\n",
       "      <th>54</th>\n",
       "      <th>55</th>\n",
       "      <th>56</th>\n",
       "      <th>57</th>\n",
       "      <th>58</th>\n",
       "      <th>59</th>\n",
       "    </tr>\n",
       "  </thead>\n",
       "  <tbody>\n",
       "    <tr>\n",
       "      <td>0</td>\n",
       "      <td>35.570</td>\n",
       "      <td>35.492</td>\n",
       "      <td>35.469</td>\n",
       "      <td>35.422</td>\n",
       "      <td>35.414</td>\n",
       "      <td>35.320</td>\n",
       "      <td>35.227</td>\n",
       "      <td>35.242</td>\n",
       "      <td>35.160</td>\n",
       "      <td>35.176</td>\n",
       "      <td>...</td>\n",
       "      <td>36.008</td>\n",
       "      <td>35.984</td>\n",
       "      <td>35.996</td>\n",
       "      <td>36.039</td>\n",
       "      <td>36.008</td>\n",
       "      <td>36.008</td>\n",
       "      <td>36.094</td>\n",
       "      <td>36.102</td>\n",
       "      <td>36.090</td>\n",
       "      <td>36.152</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <td>1</td>\n",
       "      <td>36.156</td>\n",
       "      <td>36.094</td>\n",
       "      <td>35.992</td>\n",
       "      <td>36.008</td>\n",
       "      <td>35.992</td>\n",
       "      <td>35.902</td>\n",
       "      <td>35.824</td>\n",
       "      <td>35.820</td>\n",
       "      <td>35.727</td>\n",
       "      <td>35.727</td>\n",
       "      <td>...</td>\n",
       "      <td>37.328</td>\n",
       "      <td>37.324</td>\n",
       "      <td>37.340</td>\n",
       "      <td>37.332</td>\n",
       "      <td>37.316</td>\n",
       "      <td>37.410</td>\n",
       "      <td>37.418</td>\n",
       "      <td>37.422</td>\n",
       "      <td>37.488</td>\n",
       "      <td>37.477</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <td>2</td>\n",
       "      <td>37.488</td>\n",
       "      <td>37.391</td>\n",
       "      <td>37.340</td>\n",
       "      <td>37.312</td>\n",
       "      <td>37.223</td>\n",
       "      <td>37.145</td>\n",
       "      <td>37.059</td>\n",
       "      <td>36.973</td>\n",
       "      <td>36.898</td>\n",
       "      <td>36.879</td>\n",
       "      <td>...</td>\n",
       "      <td>38.457</td>\n",
       "      <td>38.461</td>\n",
       "      <td>38.457</td>\n",
       "      <td>38.469</td>\n",
       "      <td>38.469</td>\n",
       "      <td>38.555</td>\n",
       "      <td>38.527</td>\n",
       "      <td>38.543</td>\n",
       "      <td>38.527</td>\n",
       "      <td>38.621</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <td>3</td>\n",
       "      <td>38.633</td>\n",
       "      <td>38.535</td>\n",
       "      <td>38.469</td>\n",
       "      <td>38.379</td>\n",
       "      <td>38.297</td>\n",
       "      <td>38.223</td>\n",
       "      <td>38.125</td>\n",
       "      <td>38.062</td>\n",
       "      <td>37.977</td>\n",
       "      <td>37.969</td>\n",
       "      <td>...</td>\n",
       "      <td>39.441</td>\n",
       "      <td>39.363</td>\n",
       "      <td>39.367</td>\n",
       "      <td>39.457</td>\n",
       "      <td>39.461</td>\n",
       "      <td>39.461</td>\n",
       "      <td>39.473</td>\n",
       "      <td>39.441</td>\n",
       "      <td>39.453</td>\n",
       "      <td>39.461</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <td>4</td>\n",
       "      <td>39.461</td>\n",
       "      <td>39.461</td>\n",
       "      <td>39.375</td>\n",
       "      <td>39.281</td>\n",
       "      <td>39.203</td>\n",
       "      <td>39.113</td>\n",
       "      <td>39.043</td>\n",
       "      <td>38.969</td>\n",
       "      <td>38.875</td>\n",
       "      <td>38.883</td>\n",
       "      <td>...</td>\n",
       "      <td>40.324</td>\n",
       "      <td>40.320</td>\n",
       "      <td>40.312</td>\n",
       "      <td>40.340</td>\n",
       "      <td>40.320</td>\n",
       "      <td>40.387</td>\n",
       "      <td>40.391</td>\n",
       "      <td>40.391</td>\n",
       "      <td>40.387</td>\n",
       "      <td>40.391</td>\n",
       "    </tr>\n",
       "  </tbody>\n",
       "</table>\n",
       "<p>5 rows × 60 columns</p>\n",
       "</div>"
      ],
      "text/plain": [
       "       0       1       2       3       4       5       6       7       8   \\\n",
       "0  35.570  35.492  35.469  35.422  35.414  35.320  35.227  35.242  35.160   \n",
       "1  36.156  36.094  35.992  36.008  35.992  35.902  35.824  35.820  35.727   \n",
       "2  37.488  37.391  37.340  37.312  37.223  37.145  37.059  36.973  36.898   \n",
       "3  38.633  38.535  38.469  38.379  38.297  38.223  38.125  38.062  37.977   \n",
       "4  39.461  39.461  39.375  39.281  39.203  39.113  39.043  38.969  38.875   \n",
       "\n",
       "       9   ...      50      51      52      53      54      55      56  \\\n",
       "0  35.176  ...  36.008  35.984  35.996  36.039  36.008  36.008  36.094   \n",
       "1  35.727  ...  37.328  37.324  37.340  37.332  37.316  37.410  37.418   \n",
       "2  36.879  ...  38.457  38.461  38.457  38.469  38.469  38.555  38.527   \n",
       "3  37.969  ...  39.441  39.363  39.367  39.457  39.461  39.461  39.473   \n",
       "4  38.883  ...  40.324  40.320  40.312  40.340  40.320  40.387  40.391   \n",
       "\n",
       "       57      58      59  \n",
       "0  36.102  36.090  36.152  \n",
       "1  37.422  37.488  37.477  \n",
       "2  38.543  38.527  38.621  \n",
       "3  39.441  39.453  39.461  \n",
       "4  40.391  40.387  40.391  \n",
       "\n",
       "[5 rows x 60 columns]"
      ]
     },
     "execution_count": 3,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "### LOAD DATA ###\n",
    "\n",
    "label = pd.read_csv('profile.txt', sep='\\t', header=None)\n",
    "label.columns = ['Cooler','Valve','Pump','Accumulator','Flag']\n",
    "\n",
    "data = ['TS1.txt','TS2.txt','TS3.txt','TS4.txt']\n",
    "df = pd.DataFrame()\n",
    "\n",
    "for txt in data:\n",
    "    read_df = pd.read_csv(txt, sep='\\t', header=None)\n",
    "    df = df.append(read_df)    \n",
    "\n",
    "print(df.shape)\n",
    "df.head()"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 4,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "(2205, 60, 4)"
      ]
     },
     "execution_count": 4,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "### RESHAPE DATA AMONG SENSORS ###\n",
    "\n",
    "df = df.sort_index().values.reshape(-1,len(data),len(df.columns)).transpose(0,2,1)\n",
    "df.shape"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 5,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "image/png": "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\n",
      "text/plain": [
       "<Figure size 576x360 with 1 Axes>"
      ]
     },
     "metadata": {
      "needs_background": "light"
     },
     "output_type": "display_data"
    }
   ],
   "source": [
    "### PLOT ORIGINAL TEMPERATURE DATA ###\n",
    "\n",
    "plt.figure(figsize=(8,5))\n",
    "plt.plot(df[0])\n",
    "plt.title('Original Temperature Data')\n",
    "plt.ylabel('Temperature'); plt.xlabel('Time')\n",
    "np.set_printoptions(False)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 6,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "100    741\n",
       "3      732\n",
       "20     732\n",
       "Name: Cooler, dtype: int64"
      ]
     },
     "execution_count": 6,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "### LABEL DISTRIBUTION ###\n",
    "\n",
    "label = label.Cooler\n",
    "label.value_counts()"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 7,
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "{3: 0, 20: 1, 100: 2}\n",
      "{0: 3, 1: 20, 2: 100}\n"
     ]
    }
   ],
   "source": [
    "### MAPPING LABEL ###\n",
    "\n",
    "diz_label, diz_reverse_label = {}, {}\n",
    "for i,lab in enumerate(label.unique()):\n",
    "    diz_label[lab] = i\n",
    "    diz_reverse_label[i] = lab\n",
    "\n",
    "print(diz_label)\n",
    "print(diz_reverse_label)\n",
    "label = label.map(diz_label)\n",
    "y = to_categorical(label)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 8,
   "metadata": {},
   "outputs": [],
   "source": [
    "### TRAIN TEST SPLIT ###\n",
    "\n",
    "X_train, X_test, y_train, y_test = train_test_split(df, y, random_state = 42, test_size=0.2)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 9,
   "metadata": {},
   "outputs": [],
   "source": [
    "### SCALE DATA ###\n",
    "\n",
    "scaler = StandardScaler()\n",
    "\n",
    "X_train = scaler.fit_transform(X_train.reshape(-1, X_train.shape[-1])).reshape(X_train.shape)\n",
    "X_test = scaler.transform(X_test.reshape(-1, X_test.shape[-1])).reshape(X_test.shape)"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "# MODEL"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 10,
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "Train on 1411 samples, validate on 353 samples\n",
      "Epoch 1/10\n",
      "1411/1411 - 3s - loss: 0.2305 - accuracy: 0.9298 - val_loss: 0.0763 - val_accuracy: 0.9802\n",
      "Epoch 2/10\n",
      "1411/1411 - 1s - loss: 0.1263 - accuracy: 0.9752 - val_loss: 0.0900 - val_accuracy: 0.9802\n",
      "Epoch 3/10\n",
      "1411/1411 - 1s - loss: 0.1061 - accuracy: 0.9745 - val_loss: 0.0705 - val_accuracy: 0.9887\n",
      "Epoch 4/10\n",
      "1411/1411 - 1s - loss: 0.1074 - accuracy: 0.9787 - val_loss: 0.0683 - val_accuracy: 0.9802\n",
      "Epoch 5/10\n",
      "1411/1411 - 1s - loss: 0.1080 - accuracy: 0.9794 - val_loss: 0.0686 - val_accuracy: 0.9858\n",
      "Epoch 6/10\n",
      "1411/1411 - 1s - loss: 0.1250 - accuracy: 0.9688 - val_loss: 0.0615 - val_accuracy: 0.9802\n",
      "Epoch 7/10\n",
      "1411/1411 - 1s - loss: 0.1201 - accuracy: 0.9702 - val_loss: 0.0567 - val_accuracy: 0.9858\n",
      "Epoch 8/10\n",
      "1411/1411 - 1s - loss: 0.1032 - accuracy: 0.9759 - val_loss: 0.1024 - val_accuracy: 0.9830\n",
      "Epoch 9/10\n",
      "1411/1411 - 1s - loss: 0.1059 - accuracy: 0.9787 - val_loss: 0.0952 - val_accuracy: 0.9773\n",
      "Epoch 10/10\n",
      "1411/1411 - 1s - loss: 0.0895 - accuracy: 0.9766 - val_loss: 0.0690 - val_accuracy: 0.9830\n"
     ]
    }
   ],
   "source": [
    "num_sensors = 4\n",
    "TIME_PERIODS = 60\n",
    "BATCH_SIZE = 16\n",
    "EPOCHS = 10\n",
    "\n",
    "model_m = Sequential()\n",
    "model_m.add(Conv1D(100, 6, activation='relu', input_shape=(TIME_PERIODS, num_sensors)))\n",
    "model_m.add(Conv1D(100, 6, activation='relu'))\n",
    "model_m.add(MaxPooling1D(3))\n",
    "model_m.add(Conv1D(160, 6, activation='relu'))\n",
    "model_m.add(Conv1D(160, 6, activation='relu'))\n",
    "model_m.add(GlobalAveragePooling1D(name='G_A_P_1D'))\n",
    "model_m.add(Dropout(0.5))\n",
    "model_m.add(Dense(3, activation='softmax'))\n",
    "\n",
    "model_m.compile(loss='categorical_crossentropy', optimizer='adam', metrics=['accuracy'])\n",
    "history = model_m.fit(X_train, y_train, batch_size=BATCH_SIZE, epochs=EPOCHS, validation_split=0.2, verbose=2)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 11,
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "441/1 - 0s - loss: 0.0553 - accuracy: 0.9887\n"
     ]
    },
    {
     "data": {
      "text/plain": [
       "[0.09616101724718636, 0.9886621]"
      ]
     },
     "execution_count": 11,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "model_m.evaluate(X_test, y_test, verbose=2)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 12,
   "metadata": {},
   "outputs": [],
   "source": [
    "### GET PREDICTED CLASS ###\n",
    "\n",
    "pred_test = np.argmax(model_m.predict(X_test), axis=1)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 13,
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "              precision    recall  f1-score   support\n",
      "\n",
      "           3       0.99      0.99      0.99       152\n",
      "          20       0.98      0.99      0.98       135\n",
      "         100       1.00      0.99      0.99       154\n",
      "\n",
      "    accuracy                           0.99       441\n",
      "   macro avg       0.99      0.99      0.99       441\n",
      "weighted avg       0.99      0.99      0.99       441\n",
      "\n"
     ]
    }
   ],
   "source": [
    "print(classification_report([diz_reverse_label[np.argmax(label)] for label in y_test], \n",
    "                            [diz_reverse_label[label] for label in pred_test]))"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 14,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "image/png": "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YieaUPwvhV+8LyIiUq5Fc51iu9IsREREJN4KPaZoZlea2SmxKkZERCSeDnSizTSgbwzqEBERibuS/j1FERGRckuhKCIi4ikURUREvKKcfVrbzBpFM1Pn3Lpi1iMiIhI3RQnFof5WVK6I8xURESlTihJe24FtpV2IiIhIvBUlFB9yzt1T6pWIiIjEmU60ERER8RSKIiIinkJRRETEUyiKiIh4hZ5o45xTaIqIyCFDoSciIuIpFEVERDyFooiIiKdQFBER8RSKIiIinkJRRETEUyiKiIh4CkURERFPoSgiIuIpFEVERLyi/J7iIcGASodZvMuQONi88OF4lyBxUqfDTfEuQeJg16p1BY7TlqKIiIinUBQREfEUiiIiIp5CUURExFMoioiIeApFERERT6EoIiLiKRRFREQ8haKIiIinUBQREfEUiiIiIp5CUURExFMoioiIeApFERERT6EoIiLiKRRFREQ8haKIiIinUBQREfEUiiIiIp5CUURExFMoioiIeApFERERT6EoIiLiKRRFREQ8haKIiIinUBQREfEUiiIiIp5CUURExFMoioiIeApFERERT6EoIiLiKRRFREQ8haKIiIinUBQREfEUiiIiIp5CUURExFMoioiIeApFERERT6EoIiLiKRRFREQ8haKIiIinUBQREfEUiiIiIp5CUURExFMoioiIeApFERERT6EoIiLiKRRFREQ8haKIiIinUBQREfEUiiIiIp5CUURExFMoioiIeArFCmbKpCc46YSm1D7yCDp3aMu8eR8V2n75F1/Q86wzqFOjKsc2Ppr7xt6Dcy5Pm48+/IDOHdpS+8gjaN7sWKZOmVyaiyDF9OTkJ2jR7FgSa1ala2o75h9o3S//gt49upFUqxonNG3IuHvzrvvMjAyuuvIKWrdqTs2qCVx7zVWlvQhSTIMHnMbKN+9i68KJzH9+FF1aH1do+4t6tib9hZvZMn8CX719N8Ov7J6vzbUXn8aSV28ja8EElk2/ncvP7VBa5ZcpCsUK5OWXXmRk2lBG33wr6Z8soWOnzvQ972zWrVsXsf327ds57+yeJKekMG/hJ0x46FEemvAAjzw8MbfNmtWr6dvnHDp26kz6J0sYNXoMacNu4rXpr8ZqsaQIXnn5RUaPGMbIm8cwf9FndEztRL/zz+G7Qtb9+ef0Ijk5hQ8WfMwDEx/hkYkP8ljI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3BSy7gE6d2iT5/HMt9+kUePGfPnfwrdCJHZe+c9n1K1VnVuu6U39pJqs+CaDvkMmsS5jKwD1k2pxbMM8R6W44rwO3DesL2aw6PM19B78KItXrM0dX6nSYQy54kya3ZrCnr3ZfLj4a868aiLrMrJiumzxUKauU8w5puic6xYy7DZgpHOuTljbQcCTQBXn3B4z2+PbPRLW7gdgmnPutgjPNxgYDHBMo0Zt//vN2vAmcgioCNcpSvFUhOsUJXrl/TrFrUCNCJdW1AZ+cc7tCWlXO8L0tYi8BYlz7knnXDvnXLt6SfVKrGARESmfykMorgIqAceHDQ8/hriKsGOHZnYMUD2snYiISETlIRQXANuBATkDzKwa0Ad4J6TdO0BvMws9N/kS4FfggxjUKSIi5VzcT7TxAXeOf3g0UNPM+vvHM51zv5jZeOAOM9vK/ov3DwMeC5nVZGAIMN3M/gIcC9wFTKzo1yiKiEjJiHsoAsnAy2HDch43JbhIfzxBCI4BEoHFQE/nXO7Vx865rWbWHXic4BrGbcBDBMEoIiJyQHEPRefcGqDQfqVccIrsvf5WWLsvgbNKrDgRETmklIdjiiIiIjGhUBQREfEUiiIiIp5CUURExFMoioiIeApFERERT6EoIiLiKRRFREQ8haKIiIinUBQREfEUiiIiIp5CUURExFMoioiIeApFERERT6EoIiLiKRRFREQ8haKIiIinUBQREfEUiiIiIp5CUURExFMoioiIeApFERERT6EoIiLiKRRFREQ8haKIiIinUBQREfEUiiIiIp5CUURExFMoioiIeApFERERT6EoIiLiKRRFREQ8haKIiIinUBQREfEUiiIiIp5CUURExFMoioiIeApFERERT6EoIiLiKRRFREQ8haKIiIinUBQREfEUiiIiIp5CUURExFMoioiIeApFERERT6EoIiLiKRRFREQ8haKIiIinUBQREfEUiiIiIp5CUURExFMoioiIeApFERERT6EoIiLiKRRFREQ8c87Fu4Yywcw2AWvjXUecJAGb412ExIXW/aHrUF73jZ1z9SKNUCgKZrbYOdcu3nVI7GndH7q07iPT7lMRERFPoSgiIuIpFAXgyXgXIHGjdX/o0rqPQMcURUREPG0pioiIeApFERERT6EoIiLiKRRFRES8hHgXIPFnZk2BpsBq59zqeNcjIhIvOvv0EGFm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\n",
      "text/plain": [
       "<Figure size 504x504 with 1 Axes>"
      ]
     },
     "metadata": {
      "needs_background": "light"
     },
     "output_type": "display_data"
    }
   ],
   "source": [
    "cnf_matrix = confusion_matrix([diz_reverse_label[np.argmax(label)] for label in y_test], \n",
    "                              [diz_reverse_label[label] for label in pred_test])\n",
    "\n",
    "plt.figure(figsize=(7,7))\n",
    "plot_confusion_matrix(cnf_matrix, classes=list(diz_reverse_label.values()))\n",
    "plt.show()"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "# VISUAL REPRESENTATION"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 15,
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "Model: \"model\"\n",
      "_________________________________________________________________\n",
      "Layer (type)                 Output Shape              Param #   \n",
      "=================================================================\n",
      "conv1d_input (InputLayer)    [(None, 60, 4)]           0         \n",
      "_________________________________________________________________\n",
      "conv1d (Conv1D)              (None, 55, 100)           2500      \n",
      "_________________________________________________________________\n",
      "conv1d_1 (Conv1D)            (None, 50, 100)           60100     \n",
      "_________________________________________________________________\n",
      "max_pooling1d (MaxPooling1D) (None, 16, 100)           0         \n",
      "_________________________________________________________________\n",
      "conv1d_2 (Conv1D)            (None, 11, 160)           96160     \n",
      "_________________________________________________________________\n",
      "conv1d_3 (Conv1D)            (None, 6, 160)            153760    \n",
      "_________________________________________________________________\n",
      "G_A_P_1D (GlobalAveragePooli (None, 160)               0         \n",
      "=================================================================\n",
      "Total params: 312,520\n",
      "Trainable params: 312,520\n",
      "Non-trainable params: 0\n",
      "_________________________________________________________________\n"
     ]
    }
   ],
   "source": [
    "### MAKE A MODEL FOR EMBEDDINGS ###\n",
    "emb_model = Model(inputs=model_m.input, outputs=model_m.get_layer('G_A_P_1D').output)\n",
    "emb_model.summary()"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 16,
   "metadata": {},
   "outputs": [],
   "source": [
    "### EXTRACT EMBEDDINGS ###\n",
    "serie_features = emb_model.predict(X_test)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 17,
   "metadata": {},
   "outputs": [],
   "source": [
    "### VISUALIZE EMBEDDINGS ###\n",
    "tsne = TSNE(n_components=2, random_state=42, n_iter=300, perplexity=5)\n",
    "T = tsne.fit_transform(serie_features)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 18,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "image/png": "iVBORw0KGgoAAAANSUhEUgAAA6cAAAIICAYAAACSIZj/AAAABHNCSVQICAgIfAhkiAAAAAlwSFlzAAALEgAACxIB0t1+/AAAADh0RVh0U29mdHdhcmUAbWF0cGxvdGxpYiB2ZXJzaW9uMy4xLjIsIGh0dHA6Ly9tYXRwbG90bGliLm9yZy8li6FKAAAgAElEQVR4nOzdd3hUdfbH8fdNSA8CCggqRbChYMGsIPaKoqwoFmwr1sWKrL2svRdsK7ZVQVQUQRQbIirNDhawgoqw9F7S2/39cZJf2p1JnXtnJp/X8+RJcu+dmRNImTPf8z3HcV0XERERERERkSAlBB2AiIiIiIiIiJJTERERERERCZySUxEREREREQmcklMREREREREJnJJTERERERERCZySUxEREREREQlci6ADqKxt27Zu165dgw5DREREREREImDu3LlrXddt53UuqpLTrl27MmfOnKDDEBERERERkQhwHGdxqHMq6xUREREREZHAKTkVERERERGRwCk5FRERERERkcApORUREREREZHAKTkVERERERGRwCk5FRERERERkcApORUREREREZHAKTkVERERERGRwCk5FRERERERkcApORUREREREZHAKTkVERERERGRwCk5FRERERERkcApORUREREREZHAKTkVERERERGRwCk5FRERERERkcApORUREREREZHAtQg6ABERiQMbN8Lzz8Ps2bDrrnDxxdClS9BRiYiISAxRcioiIo2zYgX07g2bNkFeHiQnw3/+Ax99BPvvH3R0IiIiEiNU1isiIo1z882wdq0lpgCFhZCTA+eeG2xcIiIiElOUnIqISONMngzFxTWPL1oEa9b4H4+IiIjEJCWnIiLScFOnwrp1oc+npvoXi4iIiMQ07TkVEZGGWbwYBg0C1/U+f9RR0LKlvzFJXFm3DqZNs23M/ftDenrQEYmISCQpORURkYZ58UUoKAh9/pRT/ItF4s5zz8EVV0BSEjgOlJbCpElw5JFBRyYiIpGisl4REWmYpUstYwjl7bf9i0Xiyq+/wvDhkJ8PW7bA5s2QnW0L9Vu2BB2diIhEipJTERFpmKOOgoQwf0batfMvFokrL70ERUU1jyckwDvv+B+PiIj4Q8mpiIg0TLt2ofebJiTAlVf6G4/EjZwc7wbQJSV2TkRE4pOSUxERqb/iYjj1VO/k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SI7jdAVmAj2BJa7rtq50boPrujVKex3HuQi4CKBz5877Ll68uMniERGRRsjJge7dYe1a25sFNi6ja1cr+fV68igi0WvTJpgzx/Z09urVtPe9fj08+ii89559vs02sOeecP750KNHzeuLiuCUUyzBS0iwt3btrANv27Z27oMPqv7ueeQRuPRSmDvXGiAVFdmqZ0YGtGljX9u224aOcd062GGHmiusGRkwaRIcdVTV43/8YaXRoVZIR42Ciy+u27/P3LnWxbh6eXNampUU1+f/o6gInngCnnvOYjv9dLj22tBjjkSiTLiGSE2WnDqOkwnMAO52XfdNx3E21iU5rUzdekVEoszixfbka+pUW3UZNKhiZISISGPNn29JZadOcPjhVctu//gD5s2z3zd9+9rqaLmVK+G//4XffoN+/ayRUl2Ss//+F664whK8khJbvR08GEaPrlkunJ1tzY+8VlwTEiyprOsWh7vvthLh8mS7XIsWNkbnuuvqdj9gjbimT69IdFNTYZdd7N8xKanu9yMSkIh363UcJwmYCLziuu6bZYdXOY7T0XXdFY7jdARWN8VjiYiIj7p0sZEZpaX2xC3UXi8RkYbo1Sv0qmH37vbmpUOH2jvzerngAlvBfOUVSz4HDbIuwl6/2zIzbeX3mWdq7g3t3bt+e+8zMixxrJ6cJiXVb8Xzm29sdbnyCmx+Pvz5p43HGTw4/O2LiuCppyxJd12bMXvZZfZvsWiRdWFXN2IJUKNXTh3HcbA9petd172y0vEHgXWu697nOM71wNau614b7r60cioiIiIiUaO4GK680hLU4mLbznDqqbbSWpeZquVWrLBEOy+v6vH0dEsK27ev2/385z9w9dW2H7a64cOttDoU14X+/eGzz6quurZqZSXfycl2v+edZ2XD2rohERJu5bQpuvUeAJwNHO44zvdlbwOA+4CjHMdZCBxV9rmIiIiISGxo0cISwrw82LjRVh5ffbV+iSlAx462WpueDlttZW8ZGfDaa3VPTMG6FXs9dlqa9QMIZ/Zs+Pzzmquuq1bZ+82bLTkdMwbuvbfm7UtKYPny8DNtRRqpSRsiNZZWTkVEREQkbmVn2wgZx4Ejj/TuiB5OYSF07gyrV1ctNW7Z0kp727YNfdv777dS6LqMwGnb1joSlxs7Fv71L2uU57o2Duexxyypzcysuh9YpBaRXjkV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+62tllZXXAzdu9fvngccAOvX297V556zZPeSS6w0WImpiIiIxCuNkhERCWDePDjlFO9RwAceaKun1a1da8e3boXSUjuWlWWTne68M/Txikhs+P136849daq1icjLg7/+FQ7TWE0RiXOBRslo5VREJIB27Wqvglbq0KH2sV13ha++sr5k770HbdpYJ90BA0Ibp4jEjg0bLAldt85aQYB90PXCC3DzzTBqVGTjExGJFK2cikjc2LjRGhf9/ruteH7yiSWLN98M553X+Nc96SRraFQ9Sc3Kssr5Xr2aHreIxLeSEmsD8dJL9rPDdeGtt6qqK6rLzIRvvoEuXcIfp4hIOGjlVETi3u23w113QXl5zeO//gp//KN1uB0+vHGvPXWqNceeNcsmNoHtNVViKiKBrFwJ995re8cLC6tWSR3Hu3Ea2DVvvgnXXRe+OEVEooWS00SwY4d9PNuiRaQjEQmqX36xktnp02uPb6lu50647TabtpSZ2fD7tGxpU5tWr7bV2W7dID298XGLSPz7+Wc4/HDbr+77oVmgorWkJOvuLSKSiDTnNJ6tW2cDEFu1grZt4eCD4euvIx2VSFD89hsccQRMmxY4Ma3kOLB0adPuufvucMghSkxFpG633+6dmNZHv37Bj0dEJBYoOY1X5eXQsyd88IFtdikpsW4LPXvWHJ4oEqOeftqKAur7xq+42JobiYgEyxNPWNOz1FTYbTfbU1rpww8D/3xKS6s5GiopCTIy4Mknba+8iEgiUllvvProI1izpna3hZISeOYZuPHGiIQlEixz59ZvxRRspfPMM62AQEQkGEaMgAceqPp+7Vrb3755M1x1lf28WbvW//Ozs+HLL+HTT62qo3Nn6N0bWrcOfewiItFKyWm8Wr7c+yPbggL44YfwxyMSZAccYE1DCgsDX5eWBueea5/JiDRYQYFtOC4psbbN2rsv2D72hx6qfdx17bPfYcPghhvg8sshP7/mNSkploBOnw577GEPERExKuuNV4ce6n08OxuOOSa8sYiEwOWX124akpRUVRrXu7etSKxbB6+8Ajk5kYlTYtiHH1ot+KBBcMklVrf5/PORjkqiwDff+G9qVFgImzbBRRdZopqZCbm5VsFx1FE27mrVKptzKiIiNWnOaTw7/XR7d15Z+5iaahtZFi+2JFUkxi1cCEOGwIIFlpT262d7wLS4JU32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\n",
      "text/plain": [
       "<Figure size 1152x648 with 1 Axes>"
      ]
     },
     "metadata": {
      "needs_background": "light"
     },
     "output_type": "display_data"
    }
   ],
   "source": [
    "plt.figure(figsize=(16,9))\n",
    "colors = {0:'red', 1:'blue', 2:'yellow'}\n",
    "plt.scatter(T.T[0], T.T[1], c=[colors[i] for i in np.argmax(y_test, axis=1)]) \n",
    "plt.show()"
   ]
  }
 ],
 "metadata": {
  "kernelspec": {
   "display_name": "Python 3",
   "language": "python",
   "name": "python3"
  },
  "language_info": {
   "codemirror_mode": {
    "name": "ipython",
    "version": 3
   },
   "file_extension": ".py",
   "mimetype": "text/x-python",
   "name": "python",
   "nbconvert_exporter": "python",
   "pygments_lexer": "ipython3",
   "version": "3.6.6"
  }
 },
 "nbformat": 4,
 "nbformat_minor": 2
}
